/**
 * LESSCSS.org
 * styles using the LESS compiler
 * for developement only. to publish create a CSS file with the 
 * compiled styles
 */

// Variables
// --------------------------------------------------
@white           : rgb(200,200,200);
@black           : rgb(50,50,50);
@BaseColor       : rgb(180,0,40);
@AccentColor1    : rgb(158,55,42);
@AccentColor2    : rgb(192,182,19);
@linkColor       : @AccentColor1;
@linkColorAlt    : lighten( @AccentColor1, 10%);
@baseFontSize    : 16px;
@BaseCopyColor   : @black;
@fontHeading     : Kreon, serif;
@fontCopy        : "Helvetica Neue", Helvetica, "Trebuchet MS", Arial, sans-serif;

// Mixins
// --------------------------------------------------
@import '../LESS-goodies/goodies';
@import '../LESS-goodies/punchcard-menu';
@import '../LESS-goodies/elements/elements';

// Google Web Fonts
// --------------------------------------------------
@import url(http://fonts.googleapis.com/css?family=Kreon);

// Helpers
// --------------------------------------------------
.clear:after
{
  content: ".";
  display: block;
  height: 1px;
  line-height: 1px;
  visibility: hidden;
  clear: both;
}

img.alignleft
{
  float: left;
  margin-right: @baseFontSize;
  margin-bottom: @baseFontSize;
}

.fancy-framework {
  color: @BaseColor;
  font-weight: bold;
  font-style: italic;
}

// HTML Basic
// --------------------------------------------------
html
{
  width: 100%;
  height: 100%;
}

body
{
  position: relative;
  margin: 0 auto;
  width: 960px;
  font-size: @baseFontSize;
  font-family: @fontCopy;
  color: @BaseCopyColor;
  line-height: 1.68;
  padding-bottom: @baseFontSize;
}

img#background {
  overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  min-height: 100%;
  min-width: 100%;
}

body > #container {
  position: relative;
}

ins
{
  background-color: hsl( hue(@AccentColor2), 100%, 75% );
}

a,
a:link,
a:active,
a:visited
{
  color: @BaseColor;

  transition: color 0.25s ease-in;
  -o-transition: color 0.25s ease-in;
  -moz-transition: color 0.25s ease-in;
  -webkit-transition: color 0.25s ease-in;

  &:hover {
    color: lighten( @BaseColor, 25 );
  }
}

aside {
  float: right;
  margin: 0 0 1em 1em;
  padding: .75em;
  width: 25%;
  border-style: solid;
  border-width: 0 0 0 1px;

  &.left {
    float: left;
    margin: 0 1em 1em 0;
    border-width: 0 1px 0 0;
  }
}

// Headings
// --------------------------------------------------
h1, h2, h3, h4, h5, h6
{
  font-family: @fontHeading;
  margin: 0.75em 0 0;
  line-height: 1.125;
  text-shadow: rgb(0,0,0) 0px 1px 3px;
  text-shadow: rgba(0,0,0,.5) 0px 1px 3px, rgb(255,200,200) 0px -1px 0px;
}

h1
{
  font-size: @baseFontSize * 2.25;
  font-weight: normal;
  color: @BaseColor;
}
h2
{
  font-size: @baseFontSize * 2.00;
  color: @AccentColor1;
}
h3
{
  font-size: @baseFontSize * 1.75;
  color: darken( @AccentColor1, 10% );
}
h4
{
  font-size: @baseFontSize * 1.50;
  color: darken( @AccentColor1, 20% );
}
h5
{
  font-size: @baseFontSize * 1.25;
  color: darken( @AccentColor1, 20% );
}
h6
{
  font-size: @baseFontSize * 1.00;
  color: darken( @AccentColor1, 20% );
}

// place this after the h# tags
hgroup 
{
  margin: 2em 0;
  * { margin: 0; }
}

// Body copy elements
// --------------------------------------------------
p,
dl,
li
{
  font-size: @baseFontSize * 0.875;
}

li
{
  *
  {
    // 2nd level elements are smaller
    font-size: @baseFontSize 0.75;
  }
}

dl {
  dt {
    font-weight: bold;
    margin-top: 0.5em;
  }

  dd {
  }
}

article
{
  footer
  {
    font-size: @baseFontSize * 0.75;
    color: lighten( @BaseCopyColor, 30);
  }
}

// Styles by ID tags
// --------------------------------------------------
header#main
{
  margin-top: @baseFontSize;
}

#identity
{
  margin: .25em 0 1em 0;
  float: left;

  h1
  {
    font-weight: bold;
  }
}

div#main {
  overflow: hidden;
  margin-top: 2em;
  padding: 1.25em 1.5em 3em;
  background-color: rgba( 255,255,255, 0.3 );
  .rounded();
  .shadow();
}

nav#main
{
  float: left;
  margin: 0 0 0 1em;
}

footer#main
{
  border-top: 1px solid;
  margin-top: 2em;
  padding-top: 2em;

  p {
    font-size: @baseFontSize  * .75;
  }
}

// Image with captions
// --------------------------------------------------
div.image {
  background: @white;
  float: right;
  padding: 10px;
  margin: 0 0 20px 20px;
  font-size: 12px;
  .rounded( 10px, 10px, 4px, 4px);
  .shadow();

  &.alignright { float: right; margin: 0 0 20px 20px; }
  &.alignleft { float: left; margin: 0 20px 20px 0; }

  &.thumb { padding: 2px; }

  img {
    display: block;
    margin-bottom: 10px;
    .rounded();
  }
  p.caption {
    font-size: inherit;
    padding: 0;
    margin: 10px 0 5px;
  }
}

// MENU
// <nav class="menu"><ul><li><a></a></li></ul></nav>
// --------------------------------------------------
footer nav.menu
{
  a,
  a:link,
  a:active,
  a:visited
  {
    text-decoration: none;
  }

  ul
  {
    height: auto;

    li
    {
      display: block;
      padding: .125em 0;
      font-size: @baseFontSize * 0.75;
      font-family: @fontCopy;
      line-height: inherit;
      border-right: 0 none;

      a
      {
        color: @AccentColor1;
      }

      &:hover
      {
        a
        {
          color: darken( @AccentColor1, 20% );
        }

        ul {
            display: none;
        }
      }

      ul {
        display: none;
      }

    }
  }
}

// .orbit-wrapper holds the Orbit slider
// it needs some space for the bullets below the slider which overlap the following content
.orbit-wrapper
{
  margin: 20px 10px 40px;
  .shadow();

  div.orbit
  {
    width: 960px;
    height: 450px;
    background: #000 url('../plugins/orbit/orbit/loading.gif') no-repeat 50% 50%;
    overflow: hidden;

    img, div { display: none; }
  }
}

// Blog.css
// Styles for the blog controller
// --------------------------------------------------

section#blog article {
  padding-left: 60px;
  margin: .5em 0;
  border-bottom: 1px solid;
  position: relative;
  overflow: hidden;

  footer {
    float: left;
    width: 60px;
    margin: .25em 0 .125em -60px;
    text-align: center;
    font-size: 10px;
    line-height: 1.125;
    color: rgb(50,50,50);
    text-shadow: rgb(0,0,0) 0px 1px 3px;
    text-shadow: rgba(0,0,0,.5) 0px 1px 3px;

    time.day {
      font-weight: bold;
      font-size: 14px;
    }
  }

  h1 {
    margin: 0;
    font-size: 30px;
  }

  p {
    font-size: 12px;
    margin: 0 0 .5em 0;
  }

  a {
    text-decoration: none;
    color: rgb(180,0,40);
    transition-property: color;
    transition-duration: .5s;
    transition-delay: .5s;
    transition-timing-function: ease-out;
  }

  a:hover {
    color: rgb(250,50,50);
  }
}


// Pagination
// --------------------------------------------------
.pagination {
  a, span {
    margin: 0em .5em;
    padding: 0em .5em;
    font-size: 12px;
    float: left;
    display: block;
    text-decoration: none;
    background-color: rgba(255,255,255,.5);
    .rounded();
    .shadow();
  }
  span {
    color: lighten( @black, 30 );
  }
  a:hover {
    background-color: rgba(255,255,255,1);
  }
  a.first,
  a.last {
    display: none;
  }
  a.prev {}
  a.next {}
  a.page {
    width: 1.25em;
    text-align: center;
  }
  a.current {
    color: @black;
  }
}

// Debugging
// --------------------------------------------------
#debugging {
  position: fixed;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  background: rgb(0,0,0);
  background: rgba(0,0,0,.5);
  padding: 2.5%;
  
  h1 {
    font-size: 14px;
    color: rgb(255,255,255);
    text-shadow: none;
  }
  
  #debug-content {
    display: none;
    width: 90%;
    background: rgb( 0,0,0 );
    color: rgb(255,255,255);
    padding: 1em 1em 1em 2em;

    li {
      font-size: 10px;
    }
  }
}
